/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package brutelistcreator;

import java.awt.CardLayout;

/**
 *
 * @author Adrian Eckardt
 */
public class BruteListCreatorView extends javax.swing.JFrame {

    /**
     * Creates new form BruteListCreatorView
     */
    public BruteListCreatorView() {
        initComponents();
    }
    static CardLayout cl = new CardLayout();
    Thread t1 = new Thread();

    /**
     * This method is called from within the constructor to initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is always
     * regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        PanelOuter = new javax.swing.JPanel();
        PanelMain = new javax.swing.JPanel();
        CHK_NUMBERS = new javax.swing.JCheckBox();
        CHK_LOWERCHAR = new javax.swing.JCheckBox();
        CHK_UPPERCHAR = new javax.swing.JCheckBox();
        jLabel1 = new javax.swing.JLabel();
        TFIELD_SPECIAL_CHAR = new javax.swing.JTextField();
        jLabel2 = new javax.swing.JLabel();
        jLabel3 = new javax.swing.JLabel();
        B_COUNT = new javax.swing.JButton();
        B_CREATE = new javax.swing.JButton();
        B_ABORT = new javax.swing.JButton();
        jLabel4 = new javax.swing.JLabel();
        TFIELD_FILENAME = new javax.swing.JTextField();
        TFIELD_SIZE = new javax.swing.JTextField();
        LABEL_DS_SIZE = new javax.swing.JLabel();
        CHK_ADD = new javax.swing.JCheckBox();
        statusBar = new javax.swing.JProgressBar();
        PanelAbout = new javax.swing.JPanel();
        B_CLOSEABOUT = new javax.swing.JButton();
        jLabel5 = new javax.swing.JLabel();
        jLabel6 = new javax.swing.JLabel();
        jLabel7 = new javax.swing.JLabel();
        jLabel8 = new javax.swing.JLabel();
        jMenuBar1 = new javax.swing.JMenuBar();
        jMenu1 = new javax.swing.JMenu();
        jMenuItem1 = new javax.swing.JMenuItem();
        jMenu2 = new javax.swing.JMenu();
        jMenuItem2 = new javax.swing.JMenuItem();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        setTitle("BruteListCreator");
        setMaximumSize(new java.awt.Dimension(390, 310));
        setMinimumSize(new java.awt.Dimension(390, 310));
        setPreferredSize(new java.awt.Dimension(390, 305));
        setResizable(false);

        PanelOuter.setLayout(new java.awt.CardLayout());

        PanelMain.setMaximumSize(new java.awt.Dimension(382, 220));
        PanelMain.setMinimumSize(new java.awt.Dimension(382, 220));
        PanelMain.setPreferredSize(new java.awt.Dimension(382, 220));

        CHK_NUMBERS.setSelected(true);
        CHK_NUMBERS.setText("numbers 0-9");
        CHK_NUMBERS.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                CHK_NUMBERSActionPerformed(evt);
            }
        });

        CHK_LOWERCHAR.setText("lower char a-z");

        CHK_UPPERCHAR.setText("upper char A-Z");

        jLabel1.setText("special char:");

        TFIELD_SPECIAL_CHAR.setText("?! _-");
        TFIELD_SPECIAL_CHAR.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                TFIELD_SPECIAL_CHARActionPerformed(evt);
            }
        });

        jLabel2.setText("length:");

        jLabel3.setText("datasets: ");

        B_COUNT.setText("Count Datasets");
        B_COUNT.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                B_COUNTActionPerformed(evt);
            }
        });

        B_CREATE.setText("Create List");
        B_CREATE.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                B_CREATEActionPerformed(evt);
            }
        });

        B_ABORT.setText("Abort");
        B_ABORT.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                B_ABORTActionPerformed(evt);
            }
        });

        jLabel4.setText("file:");

        TFIELD_FILENAME.setText("Wordlist.txt");

        TFIELD_SIZE.setText("5");

        CHK_ADD.setText("add");

        javax.swing.GroupLayout PanelMainLayout = new javax.swing.GroupLayout(PanelMain);
        PanelMain.setLayout(PanelMainLayout);
        PanelMainLayout.setHorizontalGroup(
            PanelMainLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(PanelMainLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(PanelMainLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(PanelMainLayout.createSequentialGroup()
                        .addGroup(PanelMainLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(PanelMainLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                                .addComponent(jLabel1)
                                .addComponent(jLabel2))
                            .addComponent(jLabel4, javax.swing.GroupLayout.Alignment.TRAILING))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addGroup(PanelMainLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                            .addComponent(TFIELD_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE, 30, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(TFIELD_FILENAME, javax.swing.GroupLayout.DEFAULT_SIZE, 224, Short.MAX_VALUE)
                            .addComponent(TFIELD_SPECIAL_CHAR))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addComponent(CHK_ADD, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
                    .addGroup(PanelMainLayout.createSequentialGroup()
                        .addGroup(PanelMainLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(CHK_NUMBERS)
                            .addGroup(PanelMainLayout.createSequentialGroup()
                                .addComponent(CHK_LOWERCHAR)
                                .addGap(56, 56, 56)
                                .addComponent(CHK_UPPERCHAR))
                            .addGroup(PanelMainLayout.createSequentialGroup()
                                .addGap(16, 16, 16)
                                .addComponent(jLabel3)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(LABEL_DS_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE, 90, javax.swing.GroupLayout.PREFERRED_SIZE)))
                        .addGap(0, 126, Short.MAX_VALUE))
                    .addGroup(PanelMainLayout.createSequentialGroup()
                        .addComponent(B_COUNT)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addComponent(B_CREATE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                        .addComponent(B_ABORT))
                    .addComponent(statusBar, javax.swing.GroupLayout.DEFAULT_SIZE, 372, Short.MAX_VALUE))
                .addContainerGap())
        );
        PanelMainLayout.setVerticalGroup(
            PanelMainLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(PanelMainLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(CHK_NUMBERS)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(PanelMainLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(CHK_LOWERCHAR)
                    .addComponent(CHK_UPPERCHAR))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addGroup(PanelMainLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel1)
                    .addComponent(TFIELD_SPECIAL_CHAR, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(PanelMainLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(TFIELD_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jLabel2))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 6, Short.MAX_VALUE)
                .addGroup(PanelMainLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel4)
                    .addComponent(TFIELD_FILENAME, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(CHK_ADD))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(PanelMainLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addComponent(LABEL_DS_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE, 19, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jLabel3))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addGroup(PanelMainLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(PanelMainLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                        .addComponent(B_CREATE)
                        .addComponent(B_ABORT))
                    .addComponent(B_COUNT))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addComponent(statusBar, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(26, 26, 26))
        );

        PanelOuter.add(PanelMain, "card2");

        PanelAbout.setName("About");
        PanelAbout.setPreferredSize(new java.awt.Dimension(381, 21));

        B_CLOSEABOUT.setText("Close \"About\"");
        B_CLOSEABOUT.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                B_CLOSEABOUTActionPerformed(evt);
            }
        });

        jLabel5.setText("Autor:");

        jLabel6.setText("Version:");

        jLabel7.setText("Adrian Eckardt");

        jLabel8.setText("0.1.0");

        javax.swing.GroupLayout PanelAboutLayout = new javax.swing.GroupLayout(PanelAbout);
        PanelAbout.setLayout(PanelAboutLayout);
        PanelAboutLayout.setHorizontalGroup(
            PanelAboutLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(PanelAboutLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(PanelAboutLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, PanelAboutLayout.createSequentialGroup()
                        .addGap(0, 143, Short.MAX_VALUE)
                        .addComponent(B_CLOSEABOUT)
                        .addGap(140, 140, 140))
                    .addGroup(PanelAboutLayout.createSequentialGroup()
                        .addComponent(jLabel5)
                        .addGap(18, 18, 18)
                        .addComponent(jLabel7)
                        .addContainerGap())
                    .addGroup(PanelAboutLayout.createSequentialGroup()
                        .addComponent(jLabel6)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addComponent(jLabel8)
                        .addGap(0, 0, Short.MAX_VALUE))))
        );
        PanelAboutLayout.setVerticalGroup(
            PanelAboutLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, PanelAboutLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(PanelAboutLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel5)
                    .addComponent(jLabel7))
                .addGap(23, 23, 23)
                .addGroup(PanelAboutLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jLabel6)
                    .addComponent(jLabel8))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 133, Short.MAX_VALUE)
                .addComponent(B_CLOSEABOUT)
                .addGap(19, 19, 19))
        );

        PanelOuter.add(PanelAbout, "CardAbout");
        PanelAbout.getAccessibleContext().setAccessibleName("CardAbout");

        jMenu1.setText("File");

        jMenuItem1.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_Q, java.awt.event.InputEvent.CTRL_MASK));
        jMenuItem1.setText("Exit");
        jMenuItem1.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem1ActionPerformed(evt);
            }
        });
        jMenu1.add(jMenuItem1);

        jMenuBar1.add(jMenu1);

        jMenu2.setText("Help");

        jMenuItem2.setAccelerator(javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_A, java.awt.event.InputEvent.SHIFT_MASK));
        jMenuItem2.setText("About");
        jMenuItem2.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jMenuItem2ActionPerformed(evt);
            }
        });
        jMenu2.add(jMenuItem2);

        jMenuBar1.add(jMenu2);

        setJMenuBar(jMenuBar1);

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(PanelOuter, javax.swing.GroupLayout.DEFAULT_SIZE, 392, Short.MAX_VALUE)
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(PanelOuter, javax.swing.GroupLayout.DEFAULT_SIZE, 237, Short.MAX_VALUE)
        );

        pack();
    }// </editor-fold>//GEN-END:initComponents

    private void TFIELD_SPECIAL_CHARActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_TFIELD_SPECIAL_CHARActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_TFIELD_SPECIAL_CHARActionPerformed

    private void CHK_NUMBERSActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_CHK_NUMBERSActionPerformed
        // TODO add your handling code here:
    }//GEN-LAST:event_CHK_NUMBERSActionPerformed

    private void B_CREATEActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_B_CREATEActionPerformed
        // TODO add your handling code here:
        this.createList(evt);
    }//GEN-LAST:event_B_CREATEActionPerformed

    private void B_COUNTActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_B_COUNTActionPerformed
        // TODO add your handling code here:
        this.calculating();
    }//GEN-LAST:event_B_COUNTActionPerformed

    private void B_ABORTActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_B_ABORTActionPerformed
        // TODO add your handling code here:
        if(t1.isAlive())
        {

            try{
                 t1.stop();
                 t1.suspend();
                 //t1.destroy();
            }
            catch(Exception e)
            {

            }
        }
        B_CREATE.setEnabled(true);
        B_COUNT.setEnabled(true);
        BruteListCreatorView.statusBar.setValue(0);
    }//GEN-LAST:event_B_ABORTActionPerformed

    private void jMenuItem1ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem1ActionPerformed
        // TODO add your handling code here:
        System.exit(0);
    }//GEN-LAST:event_jMenuItem1ActionPerformed

    private void jMenuItem2ActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jMenuItem2ActionPerformed
        // TODO add your handling code here:
        cl.show(PanelOuter, "CardAbout");
    }//GEN-LAST:event_jMenuItem2ActionPerformed

    private void B_CLOSEABOUTActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_B_CLOSEABOUTActionPerformed
        // TODO add your handling code here:
        cl.show(PanelOuter, "CardMain");
    }//GEN-LAST:event_B_CLOSEABOUTActionPerformed

    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        /*
         * Set the Nimbus look and feel
         */
        //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) ">
        /*
         * If Nimbus (introduced in Java SE 6) is not available, stay with the
         * default look and feel. For details see
         * http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html
         */
        try {
            for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
                if ("Nimbus".equals(info.getName())) {
                    javax.swing.UIManager.setLookAndFeel(info.getClassName());
                    break;
                }
            }
        } catch (ClassNotFoundException ex) {
            java.util.logging.Logger.getLogger(BruteListCreatorView.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (InstantiationException ex) {
            java.util.logging.Logger.getLogger(BruteListCreatorView.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (IllegalAccessException ex) {
            java.util.logging.Logger.getLogger(BruteListCreatorView.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (javax.swing.UnsupportedLookAndFeelException ex) {
            java.util.logging.Logger.getLogger(BruteListCreatorView.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        }
        //</editor-fold>

        /*
         * Create and display the form
         */
        java.awt.EventQueue.invokeLater(new Runnable() {

            @Override
            public void run() {
                BruteListCreatorView view = new BruteListCreatorView();
                view.setVisible(true);
                
                PanelOuter.setLayout(cl);
                cl.addLayoutComponent(PanelAbout, "CardAbout");
                cl.addLayoutComponent(PanelMain, "CardMain");
                
                cl.show(PanelOuter, "CardMain");
            }
        });
    }
    private void calculating()
    {
        // CALCULATE NUMBER OF DATASETS
        BruteListCreatorView.statusBar.setValue(0);
        brutelistcreator.Calc.specialChar = TFIELD_SPECIAL_CHAR.getText();
        
        String tmpLength = TFIELD_SIZE.getText();
        int tmpLengthInt = Integer.parseInt(tmpLength);
        
        String tmpCharset = "";
        
        if(CHK_NUMBERS.isSelected() == true)
        {
            tmpCharset+=brutelistcreator.Calc.numbers;
        }
        if(CHK_LOWERCHAR.isSelected() == true)
        {
            tmpCharset+=brutelistcreator.Calc.lowerChar;
        }
        if(CHK_UPPERCHAR.isSelected() == true)
        {
            tmpCharset+=brutelistcreator.Calc.upperChar;
        }
        tmpCharset+=brutelistcreator.Calc.specialChar;

        int charsetLength = tmpCharset.length();
        double ausgText = Math.pow(charsetLength, tmpLengthInt);
        String str = String.valueOf(ausgText);
        
        double tmpAusgText = ausgText;
        if(tmpAusgText/1000 > 1)
        {
            tmpAusgText = tmpAusgText/1000 ;
            str = String.valueOf(Math.round(tmpAusgText)) + " K (x 10^3)";
        }
        if(tmpAusgText/1000 > 1)
        {
            tmpAusgText = tmpAusgText/1000 ;
            str = String.valueOf(Math.round(tmpAusgText)) + " M (x 10^6)";
        }
        if(tmpAusgText/1000 > 1)
        {
            tmpAusgText = tmpAusgText/1000 ;
            str = String.valueOf(Math.round(tmpAusgText)) + " G (x 10^9)";
        }
        if(tmpAusgText/1000 > 1)
        {
            tmpAusgText = tmpAusgText/1000 ;
            str = String.valueOf(Math.round(tmpAusgText)) + " T (x 10^12)";
        }
        if(tmpAusgText/1000 > 1)
        {
            tmpAusgText = tmpAusgText/1000 ;
            str = String.valueOf(Math.round(tmpAusgText)) + " P (x 10^15)";
        }
        if(tmpAusgText/1000 > 1)
        {
            tmpAusgText = tmpAusgText/1000 ;
            str = String.valueOf(Math.round(tmpAusgText)) + " E (x 10^18)";
        }
        LABEL_DS_SIZE.setText(str);

    }
    private void createList(java.awt.event.ActionEvent evt) {                            

        //DISABEL BUTTONS
        B_COUNT.setEnabled(false);
        B_CREATE.setEnabled(false);
        
        //CALC NUMBER OF DATASETS
        calculating();
        
        //CREATE CALC OBJECT AND RUN THREAD
        Calc Cal = new Calc();

        Cal.sz = TFIELD_SPECIAL_CHAR.getText();
        Cal.num = CHK_NUMBERS.isSelected();
        Cal.bs_lower = CHK_LOWERCHAR.isSelected();
        Cal.bs_upper = CHK_UPPERCHAR.isSelected();
        Cal.TextLength = TFIELD_SIZE.getText();
        Cal.add = CHK_ADD.isSelected();
        Cal.out = TFIELD_FILENAME.getText();
        
        t1 = new Thread(Cal);
        t1.start();
        
 
    } 
    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JButton B_ABORT;
    private javax.swing.JButton B_CLOSEABOUT;
    public static javax.swing.JButton B_COUNT;
    public static javax.swing.JButton B_CREATE;
    private javax.swing.JCheckBox CHK_ADD;
    private javax.swing.JCheckBox CHK_LOWERCHAR;
    private javax.swing.JCheckBox CHK_NUMBERS;
    private javax.swing.JCheckBox CHK_UPPERCHAR;
    private javax.swing.JLabel LABEL_DS_SIZE;
    private static javax.swing.JPanel PanelAbout;
    private static javax.swing.JPanel PanelMain;
    public static javax.swing.JPanel PanelOuter;
    private javax.swing.JTextField TFIELD_FILENAME;
    private javax.swing.JTextField TFIELD_SIZE;
    private javax.swing.JTextField TFIELD_SPECIAL_CHAR;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JLabel jLabel4;
    private javax.swing.JLabel jLabel5;
    private javax.swing.JLabel jLabel6;
    private javax.swing.JLabel jLabel7;
    private javax.swing.JLabel jLabel8;
    private javax.swing.JMenu jMenu1;
    private javax.swing.JMenu jMenu2;
    private javax.swing.JMenuBar jMenuBar1;
    private javax.swing.JMenuItem jMenuItem1;
    private javax.swing.JMenuItem jMenuItem2;
    public static javax.swing.JProgressBar statusBar;
    // End of variables declaration//GEN-END:variables
}
